<!doctype html>
<html>
<head>
	<#include "/pay/include/head.html" />
	<script src="/pay/js/jquery.form.js"></script>
</head>

<body>
<#include "/pay/include/header.html" />

	<!---------------用户信息------------------>
	<div class="container serve_box">
		<div class="row">
			<div class="col-xs-3">
				<div class="serve_lf">
					<ul>
						<li>
							<a href="help.html" >准备工作</a>
						</li>
						<li>
							<a href="help_2.html" class="ac_s">发起支付</a>
						</li>
						<li>
							<a href="help_3.html">查询支付结果</a>
						</li>
						<li>
							<a href="help_4.html">相关文档下载</a>
						</li>
						<li>
							<a href="help_5.html" >签名算法</a>
						</li>
						<li>
							<a href="help_6.html" >快捷商品</a>
						</li>
					</ul>
				</div>
			</div>
			<div class="col-xs-9">
				<div class="record_ron">
					<div class="state">
							<h4>发起支付接口 </h4>
						<h4>创建支付订单接口（返回JSON）：https://www.heimipay.com/payapi/create</h4>
						<h4>创建并发起支付接口（返回支付页面）：https://www.heimipay.com/payapi/create_pay</h4>
							<h4>传参方式:POST</h4>
							<h4>请求参数：</h4>
					</div>
					<div class="table_box">
						<table id="sample-table-1" class="table table-striped table-bordered table-hover">
							<thead>
								<tr>
									<th>参数名</th>
									<th>参数含义</th>
									<th>参数类型</th>
									<th>说明</th>
								</tr>
							</thead>
							<tbody>									
								<tr>
									<td>
										uid
									</td>
									<td width=120>
										商户uid
									</td>
									<td>
										string(32)
									</td>
									<td>
										必填。您的商户唯一标识，注册后在设置里获得。一个32位字符串
									</td>
								</tr>
								<tr>
									<td>
										orderid
									</td>
									<td>
										订单ID
									</td>
									<td>
										string(32)
									</td>
									<td>
										必填。我们会据此判别是同一笔订单还是新订单。我们回调时，会带上这个参数。请保障每笔订单的订单ID不同，可以使用32位的uuid生成算法生成随机的ID.
									</td>
								</tr>

								<tr>
									<td>
										nonce_str
									</td>
									<td>
										随机字符串
									</td>
									<td>
										string
									</td>
									<td>
										必填。随机字符串，可用随机函数或日期函数生成
									</td>
								</tr>

								<tr>
									<td>
										price
									</td>
									<td>
										价格
									</td>
									<td>
										float
									</td>
									<td>
										必填。单位：元。精确小数点后2位，如9.98
									</td>
								</tr>

								<tr>
									<td>
										pay_type
									</td>
									<td>
										支付类型/渠道
									</td>
									<td>
										int
									</td>
									<td>
										必填，表示采用的支付类型。<br>
										1：支付宝；2：微信支付
									</td>
								</tr>

								<tr>
									<td>
										pay_name
									</td>
									<td>
										支付名称
									</td>
									<td>
										string(64)
									</td>
									<td>
										非必填，如果不填，则支付界面不显示支付名称
									</td>
								</tr>

								<tr>
									<td>
										pay_demo
									</td>
									<td>
										支付备注
									</td>
									<td>
										string(64)
									</td>
									<td>
										非必填，如果填写，则返回参数会回带此参数
									</td>
								</tr>

								<tr>
									<td>
										return_url
									</td>
									<td>
										跳转网址
									</td>
									<td>
										string(255)
									</td>
									<td>
										非必填。如果不填，则使用商户配置中的跳转网址<br>
										用户支付成功后，我们会让用户浏览器自动跳转到这个网址。由您自定义。不要urlencode。例：http://www.aaa.com/paysuccess_return

									</td>
								</tr>

								<tr>
									<td>
										pay_ext1
									</td>
									<td>
										扩展字段
									</td>
									<td>
										string(64)
									</td>
									<td>
										非必填，这个是扩展字段，可根据实际情况使用，如记录用户信息，优惠信息等其他信息。<br>
										如果填写，我们回调时，会带上此参数。
									</td>
								</tr>
								<tr>
									<td>
										pay_ext2
									</td>
									<td>
										扩展字段
									</td>
									<td>
										string(64)
									</td>
									<td>
										非必填，这个是扩展字段，可根据实际情况使用，如记录用户信息，优惠信息等其他信息。<br>
										如果填写，我们回调时，会带上此参数。
									</td>
								</tr>
		

								<tr>
									<td>
										sign
									</td>
									<td>
										签名
									</td>
									<td>
										string(32)
									</td>
									<td>
										MD5对上诉参数+sign_key进行签名，具体签名算法请看签名算法章节
									</td>
								</tr>





					
								
							</tbody>
						</table>

						<div class="state">
							<h4>返回参数json(适用接口：创建支付订单，支付回调，支付查询等接口通用)： </h4>
						</div>

						<table id="sample-table-1" class="table table-striped table-bordered table-hover">
							<thead>
								<tr>
									<th>参数名</th>
									<th>参数含义</th>
									<th>参数类型</th>
									<th>说明</th>
								</tr>
							</thead>
							<tbody>
								<tr>
									<td>
										ret_code
									</td>
									<td width=120>
										返回编码
									</td>
									<td>
										int
									</td>
									<td>
										必然返回。1:表示成功，其他编码都是失败，具体编码代表的含义，请查阅字典表。
									</td>
								</tr>
								<tr>
									<td>
										ret_msg
									</td>
									<td width=120>
										返回消息说明
									</td>
									<td>
										string(128)
									</td>
									<td>
										部分失败的消息会放在这里。
									</td>
								</tr>
								<tr>
									<td>
										nonce_str
									</td>
									<td width=120>
										返回随机字符串
									</td>
									<td>
										string(32)
									</td>
									<td>
										必然返回。随机生成的字符串。
									</td>
								</tr>
								<tr>
									<td>
										pay_id
									</td>
									<td width=120>
										支付平台订单ID
									</td>
									<td>
										string(32)
									</td>
									<td>
										必然返回。支付平台生成的订单号。
									</td>
								</tr>
								<tr>
									<td>
										uid
									</td>
									<td width=120>
										商户uid
									</td>
									<td>
										string(32)
									</td>
									<td>
										必然返回。您的商户唯一标识，注册后在设置里获得。
									</td>
								</tr>
								<tr>
									<td>
										orderid
									</td>
									<td>
										订单ID
									</td>
									<td>
										string(32)
									</td>
									<td>
										必然返回。是您在发起付款接口传入的您的自定义订单号。
									</td>
								</tr>
								<tr>
									<td>
										qrcode
									</td>
									<td>
										支付二维码网址
									</td>
									<td>
										string(256)
									</td>
									<td>
										支付二维码信息，如果没返回，说明存在错误，
										如果想单独展示，可以把qrcode值放到这个网址后面：http://mobile.qq.com/qrcode?url=

									</td>
								</tr>
								<tr>
									<td>
										qrcode_type
									</td>
									<td>
										支付二维码类型
									</td>
									<td>
										int
									</td>
									<td>
										同pay_type,都是代表支付类型
										1：支付宝；2：微信支付

									</td>
								</tr>
								<tr>
									<td>
										realprice
									</td>
									<td>
										支付金额
									</td>
									<td>
										float
									</td>
									<td>
										显示给用户的订单金额(如果自己定制支付页面一定要把这个价格显示在支付页上，而不是订单金额)
									</td>
								</tr>
								<tr>
									<td>
										create_time
									</td>
									<td>
										创建时间
									</td>
									<td>
										string(20)
									</td>
									<td>
										订单的创建时间，格式：yyyyMMddHHmmss
									</td>
								</tr>
								<tr>
									<td>
										pay_state
									</td>
									<td>
										支付状态
									</td>
									<td>
										int
									</td>
									<td>
										必然返回。订单的支付状态：
										0：等待支付，1：已支付
									</td>
								</tr>
								<tr>
									<td>
										pay_type
									</td>
									<td>
										支付类型/渠道
									</td>
									<td>
										int
									</td>
									<td>
										必然返回。1：支付宝；2：微信支付
									</td>
								</tr>
								<tr>
									<td>
										pay_name
									</td>
									<td>
										支付名称
									</td>
									<td>
										string(64)
									</td>
									<td>
										原样返回。
									</td>
								</tr>
								<tr>
									<td>
										pay_demo
									</td>
									<td>
										扩展字段
									</td>
									<td>
										string(64)
									</td>
									<td>
										原样返回。
									</td>
								</tr>
								<tr>
									<td>
										return_url
									</td>
									<td>
										成功后跳转网址
									</td>
									<td>
										string(255)
									</td>
									<td>
										支付成功后的跳转网站如：http://www.aaa.com/paysuccess_return
									</td>
								</tr>
								<tr>
									<td>
										pay_ext1
									</td>
									<td>
										扩展字段
									</td>
									<td>
										string(64)
									</td>
									<td>
										原样返回。
									</td>
								</tr>
								<tr>
									<td>
										pay_ext2
									</td>
									<td>
										扩展字段
									</td>
									<td>
										string(64)
									</td>
									<td>
										原样返回。
									</td>
								</tr>



								<tr>
									<td>
										sign
									</td>
									<td>
										签名
									</td>
									<td>
										string(32)
									</td>
									<td>
										MD5对上诉参数+sign_key进行签名，具体签名算法请看签名算法章节
									</td>
								</tr>


								
							</tbody>
						</table>
						<div class="state">
							<h4>接口测试： </h4>
						</div>
						<form class="cmxform" id="myform" id="myform" method="post" action="#" onsubmit="return false">
						<div class="col-xs-12">
							<ul>
								<li>
									<div class="input-group">
										<span class="input-group-addon">uid:</span>
										<input type="text" name="uid" id="uid" class="form-control" placeholder="请输入uid" VALUE="">
									</div>
								</li>
								<li>
									<div class="input-group">
										<span class="input-group-addon">orderid:</span>
										<input type="text" name="orderid" id="orderid" class="form-control" placeholder="请输入orderid" VALUE="20181010214521">
									</div>
								</li>
								<li>
									<div class="input-group">
										<span class="input-group-addon">nonce_str:</span>
										<input type="text" name="nonce_str" id="nonce_str" class="form-control" placeholder="请输入nonce_str" VALUE="20181010214521">
									</div>
								</li>

								<li>
									<div class="input-group">
										<span class="input-group-addon">price:</span>
										<input type="text" name="price" id="price" class="form-control" placeholder="请输入price"  VALUE="0.05">
									</div>
								</li>
								<li>
									<div class="input-group">
										<span class="input-group-addon">pay_type:</span>
										<input type="text" name="pay_type" id="pay_type" class="form-control" placeholder="请输入pay_type" VALUE="1">
									</div>
								</li>
								<li>
									<div class="input-group">
										<span class="input-group-addon">pay_name:</span>
										<input type="text" name="pay_name" id="pay_name" class="form-control" placeholder="请输入pay_name" VALUE="测试商品支付">
									</div>
								</li>
								<li>
									<div class="input-group">
										<span class="input-group-addon">pay_demo:</span>
										<input type="text" name="pay_demo" id="pay_demo" class="form-control" placeholder="请输入pay_demo"  VALUE="支付备注">
									</div>
								</li>

								<li>
									<div class="input-group">
										<span class="input-group-addon">return_url:</span>
										<input type="text" name="return_url" id="return_url"  class="form-control" placeholder="请输入return_url" VALUE="http://www.xxxxx.com/xxx/return">
									</div>
								</li>
								<li>
									<div class="input-group">
										<span class="input-group-addon">pay_ext1:</span>
										<input type="text" name="pay_ext1" id="pay_ext1" class="form-control" placeholder="请输入pay_ext1" VALUE="可以传用户等任意信息">
									</div>
								</li>
								<li>
									<div class="input-group">
										<span class="input-group-addon">pay_ext2:</span>
										<input type="text" name="pay_ext2" id="pay_ext2" class="form-control" placeholder="请输入pay_ext2" VALUE="可以传用户等任意信息">
									</div>
								</li>
								<li>
									<div class="input-group">
										<span class="input-group-addon">sign:</span>
										<input type="text" name="sign" id="sign" class="form-control" placeholder="请输入sign">
										<span class="input-group-btn">
        									<button class="btn btn-default" type="button" onclick="markSign()">生成签名数据</button>
      									</span>
									</div>
								</li>

								<li>
									<button class="btn btn-danger" onclick="subTest()">测试--创建支付订单接口</button>
									<button class="btn btn-info" onclick="subTest2()">测试--创建并发起支付接口</button>
								</li>
							</ul>

						</div>
						</form>
					</div>

				</div>
                			
			</div>
			
		</div>
	</div>
										

<!---------footer-------------->
<#include "/pay/include/footer.html" />

<script type="text/javascript">
	function subTest() {
        myform.action="/payapi/create";
        myform.submit();
    }

    function subTest2() {
        myform.action="/payapi/create_pay";
        myform.submit();
    }



	function markSign() {
        //判断输入框内容是否完整
        var post={
            type: 'post', // 提交方式 get/post
            url: '/payapi/markSign', // 需要提交的 u
            async:true,
            cache:false,
            dataType:'json',
            success: function(data) {
                if(data.success){
                    $('#sign').val(data.msg);
                }else{
                    layer.alert(data.msg);
                }
            },
            error:function(){
                layer.alert("系统繁忙，请稍候再试");
            }
        }
        $('#myform').ajaxSubmit(post);
    }

    /**
	 * 如果登录了，则加载最新的商户ID
     */
    function loaduser() {
        //判断输入框内容是否完整
        var post={
            type: 'post', // 提交方式 get/post
            url: '/api/pay/paybus/queryCurrBus', // 需要提交的 u
            async:true,
            cache:false,
            dataType:'json',
            success: function(data) {
                if(data.success){
                    $('#uid').val(data.data.uuid);
                    $('#orderid').val(new Date().getTime()+"");
                    $('#nonce_str').val(new Date().getTime()+"");
                }else{
                    //layer.alert(data.msg);
                }
            },
            error:function(){
                //layer.alert("系统繁忙，请稍候再试");
            }
        }
        $.ajax(post);
    }

    loaduser();

</script>
<#include "/pay/include/hmt.html" />
</body>
</html>